Establishing a peer-to-peer (P2P) connection over a commercial telecommunications network between two peer devices is a common problem in today's computing environment. This also known as device discovery. A number of prior art solutions require the use of several open or “public” keys to allow the two peer devices to discover each other and establish the P2P connection. An encryption method is said to be a public key encryption scheme when, for each associated encryption/decryption pair, one key (the public key) is made publicly available, while the other key (the private key) is kept secret. The following attributes characterize public key encryption: (i) keys are generated in pairs, consisting of a public key and a private key; (ii) there is always a mathematical relationship between the two keys, but this relationship is based on some “hard” problem (i.e. one that cannot be solved in a reasonable amount of time using any computer system currently available); (iii) the private key cannot be derived from its corresponding public key; and (iv) information encrypted in the public key can only be decrypted by its corresponding private key.
Currently, there is no acceptable way for P2P devices to discover each other over a commercial telecommunications network in a secure manner without the separate distribution of a password, key, certificate or token (either through the mail, or a physical third party interaction). This is due to the fact that the commercial telecommunications network is non-secure and subject to compromise by a skilled Interloper.
The difficulty of establishing secure communications under the prior art may be understood by reference to the following assumptions: (1) an Interloper on the network can intercept all communications between a Subscriber and a commercial Provider; (2) the Interloper has all the facilities of the Subscriber, but does not have the facilities of the Provider; (3) the Subscriber (hitherto unknown to the Provider) is responding to the Provider's solicitation, but has no material provided by the Provider; and (4) the Subscriber will attempt to set up a secure account on his first digital contact with the Provider using commercially available software (e.g., off-the-shelf web browser, etc.).
FIG. 1 is an illustration of a typical commercial network environment. FIG. 1 shows a Provider 16 of services and a potential Subscriber 10 of those services connected to a non-secure network 12 in accordance with the foregoing assumptions. More specifically, FIG. 1 shows a call 14 from Subscriber 10 that is sent through Network 12 and received by Provider 16 being intercepted by Interloper 18. FIG. 1 also shows an answer 15 from Provider 16 to Subscriber 10 also being intercepted by Interloper 18. Consequently, the Subscriber 10, believing that he has established a session key with the Provider 16, may have in fact established a session key with the Interloper 18, who is masquerading as the Provider 16.
A conventional way of solving the P2P discovery problem is to use a directional link, such as an Infra-Red (IR) link on both devices, whereby each device discovers the other device via the IR link. Once the two devices discover each other, a key-exchange takes place, and the real data is exchanged either over a secure Radio-Frequency (RF) link established using the IR link or even directly over the IR link. Although the directional nature of IR helps solve the problem, it does not completely eliminate it because eavesdropping is still possible during the key-exchange.
Accordingly, what is needed is a method and system for providing secure communications between first and second data processing devices that addresses the above-outlined problems. The method and system should be simple, cost effective and capable of being easily adapted to existing technology. The presem invention addresses these needs.